Network address translation (NAT) is a technology by which a source network address and a destination network address are rewritten when a network address packet passes through the NAT or a firewall with the NAT Function. In this way, a plurality of devices in a private network (e.g., in a company or a house) can be connected to the Internet through only a single public network address to communicate with devices in the public network. With the NAT technology, the problem that it is difficult to reserve network addresses in the Internet due to the limited number of IPv4 network addresses can be effectively solved. However, the NAT technology also makes communications among different hosts more complex.
In the current NAT communication networks, a device in a private network can directly communicate with a device in a public network via an NAT server. On the other hand, it is impossible for the device in the public network to communicate with the device in the private network directly via the NAT server unless the network address mapping data corresponding to the device in the private network have been created. However, in terms of the current network technologies, a need may exist for the device in the public network to be connected to the device in the private network (e.g., the peer-to-peer (P2P) technology, the Voice over IP (VoIP) technology, and etc.). For this reason, the NAT traversal is considered to be a technology capable of solving the problem that the device in the public network cannot directly communicate with the device in the private network.
According to the NAT traversal technology, the device in the public network must obtain the network address mapping data (i.e., data for mapping between an inner network address of the device in the private network and an outer network address corresponding to the inner network address obtained through translation by the NAT server) corresponding to the device in the private network in order to properly communicate with the device in the private network. However, in the current NAT communication networks, there still lacks a standardized mechanism that can create the network address mapping data without changing the existing NAT communication network framework.
Accordingly, an urgent need still exists in the art to provide a solution capable of effectively creating network address mapping data corresponding to a device in the private network without changing the existing NAT communication network framework so that the device in the public network can communicate with the device in the private network according to the network address mapping data.